package com.scvtc.domain.dto.teacher.base;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

/**
 * @Description: 教师基本信息
 * @Author: thy
 * @date: 2022/4/20 17:08
 */
@Data
@Builder
@EqualsAndHashCode(callSuper = false)
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@ApiModel("教师基本信息 (Dto) ")
@JsonInclude(JsonInclude.Include.NON_NULL)
@ExcelTarget("TeacherBase")
public class TeacherBaseDto {
    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    @TableId
    private Long id;

    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名")
    @Excel(name = "姓名")
    private String teacherName;

    /**
     * 性别
     */
    @ApiModelProperty(value = "性别")
    @Excel(name = "性别")
    private String teacherGender;

    /**
     * 民族
     */
    @ApiModelProperty(value = "民族")
    @Excel(name = "民族")
    private String teacherNation;

    /**
     * 身份证
     */
    @ApiModelProperty(value = "身份证")
    @Excel(name = "身份证号", width = 25.0)
    private String teacherIdentityId;

    /**
     * 教工号
     */
    @ApiModelProperty(value = "教工号")
    @Excel(name = "教工号", width = 25.0)
    private String teacherCollegeId;

    /**
     * 部门
     */
    @ApiModelProperty(value = "部门")
    @Excel(name = "部门", width = 25.0)
    private String teacherDepartment;

    /**
     * 电话
     */
    @ApiModelProperty(value = "电话")
    @Excel(name = "电话", width = 25.0)
    private String teacherTel;

    /**
     * 是否在编
     */
    @ApiModelProperty(value = "是否在编")
    @Excel(name = "是否在编")
    private String teacherSituation;

    /**
     * 教研室
     */
    @ApiModelProperty(value = "教研室")
    @Excel(name = "教研室", width = 25.0)
    private String teacherOffice;

    /**
     * 生日
     */
    @ApiModelProperty(value = "生日")
    @Excel(name = "生日", width = 25.0)
    private String teacherBirthday;

    /**
     * 参加工作时间
     */
    @ApiModelProperty(value = "参加工作时间")
    @Excel(name = "参加工作时间", width = 25.0)
    private String teacherWorkDate;

    /**
     * 进入本单位时间
     */
    @ApiModelProperty(value = "进入本单位时间")
    @Excel(name = "进入本单位时间", width = 25.0)
    private String teacherInDate;

    /**
     * 学位
     */
    @ApiModelProperty(value = "学位")
    @Excel(name = "学位")
    private String teacherDegree;

    /**
     * 学历
     */
    @ApiModelProperty(value = "学历")
    @Excel(name = "学历")
    private String teacherDiplomas;

    /**
     * 毕业时间
     */
    @ApiModelProperty(value = "毕业时间")
    @Excel(name = "毕业时间", width = 25.0)
    private String teacherGraduateDate;

    /**
     * 毕业学校
     */
    @ApiModelProperty(value = "毕业学校")
    @Excel(name = "毕业学校", width = 25.0)
    private String teacherGraduateCollege;

    /**
     * 毕业专业
     */
    @ApiModelProperty(value = "毕业专业")
    @Excel(name = "毕业专业", width = 25.0)
    private String teacherMajor;

    /**
     * 职称
     */
    @ApiModelProperty(value = "职称")
    @Excel(name = "职称")
    private String teacherRank;

    /**
     * 职称评上时间
     */
    @ApiModelProperty(value = "职称评上时间")
    @Excel(name = "职称评上时间", width = 25.0)
    private String teacherRankDate;

    /**
     * 职称起聘时间
     */
    @ApiModelProperty(value = "职称起聘时间")
    @Excel(name = "职称起聘时间", width = 25.0)
    private String teacherHireDate;

    /**
     * 聘用岗位等级
     */
    @ApiModelProperty(value = "聘用岗位等级")
    @Excel(name = "聘用岗位等级", width = 25.0)
    private String teacherJobRank;

    /**
     * 政治面貌
     */
    @ApiModelProperty(value = "政治面貌")
    @Excel(name = "政治面貌")
    private String teacherPolitical;

    /**
     * 入党时间
     */
    @ApiModelProperty(value = "入党时间")
    @Excel(name = "入党时间", width = 25.0)
    private String teacherPartyDate;

    /**
     * 是否退休
     */
    @ApiModelProperty(value = "是否退休")
    @Excel(name = "是否退休")
    private String teacherRetired;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    @Excel(name = "备注")
    private String teacherDescription;

}
